import co.cross

type linkco_t = struct{
    anyptr co // 所有的 coroutine 都可以通过 processor 标记，所以此处使用 anyptr 即可
    rawptr<linkco_t> prev
    rawptr<linkco_t> succ
    anyptr data // 各种需要的数据存储, 比如 chan 中的 msg_ptr
}

type linkco_list_t = struct{
    rawptr<linkco_t> head
    rawptr<linkco_t> rear
    i64 count
    var lock = cross.pthread_mutex_t{} // c: pthread_mutex_t
}